Flash memory is a form of persistent storage in which the retention time of data may depend on various factors. For example, the retention time of data in a flash memory cell may depend on the number of program and erase cycles the cell has experienced, the method of erase used, and the method of programming used. Various applications using flash memory may have different requirements, with, for example, some applications requiring very long retention times, and other applications requiring only short retention times. For applications requiring only short retention times, operating the flash memory in a manner that provides long retention times may not be advantageous, resulting, e.g., in degraded performance.
Thus, there is a need for a system and method for adjusting the operation of a flash memory device to suit various circumstances.